From 6b9b925add4895e5c2bff9dddc00c8f8fdef78ce Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Sat, 29 Dec 2012 02:33:14 +0100 Subject: [PATCH] widget: Fix initial state flags for RTL --- gtk/gtkwidget.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index 54e8e2cc6f..53f5048dc9 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -3669,7 +3669,23 @@ gtk_widget_init (GtkWidget *widget) priv->double_buffered = TRUE; priv->redraw_on_alloc = TRUE; priv->alloc_needed = TRUE; - priv->state_flags = GTK_STATE_FLAG_DIR_LTR; + + switch (gtk_widget_get_direction (widget)) + { + case GTK_TEXT_DIR_LTR: + priv->state_flags = GTK_STATE_FLAG_DIR_LTR; + break; + + case GTK_TEXT_DIR_RTL: + priv->state_flags = GTK_STATE_FLAG_DIR_RTL; + break; + + case GTK_TEXT_DIR_NONE: + default: + g_assert_not_reached (); + break; + } + /* this will be set to TRUE if the widget gets a child or if the * expand flag is set on the widget, but until one of those happen -- 2.30.2